// 单例模式(饿汉模式)
//饿汉模式的 Singleton 类因为在类加载时就完成了实例的创建，而类加载本身是线程安全的，所以它天生就是线程安全的。 它不需要额外的同步机制来保证线程安全
class SingletonHungry{
    private static SingletonHungry instance = new SingletonHungry();

    public static SingletonHungry getInstance() {
        return instance;
    }

    // 做出一个限制, 禁止别人去 new 这个实例
    private  SingletonHungry(){}
}

public class Demo17 {
    public static void main(String[] args) {
        //无法直接new
//        SingletonHungry singletonHungry = new SingletonHungry();

        SingletonHungry singletonHungry1 = SingletonHungry.getInstance();
        SingletonHungry singletonHungry2 = SingletonHungry.getInstance();

        if (singletonHungry1 == singletonHungry2) {
            System.out.println("同一个instance对象");
        }
    }
}
